POV-Ray : Newsgroups : povray.general : Splines and Splines : Splines and Splines Server Time
31 Jul 2024 02:27:45 EDT (-0400)
  Splines and Splines  
From: TheOzule
Date: 18 Jan 2008 06:10:01
Message: <web.4790885a62368d6f8c76e7b20@news.povray.org>
I hope I'm not retreading old ground here ...

I'm puzzled why 'spline' is used in two radically different senses in POV-Ray.

In something like 'lathe' it is what I regard as its normal use; it produces a
bent object in 3D.

In a #declare I would consider it a lookup function; it produces a float.

I hit this by wanting to include a spline in a lathe, where the spline was
created by another program.  I tried

lathe { linear_spline
#include "spline.dat"
       }

but that got thrown out with '#' found when '}' expected.  Then I saw that I
could #declare a spline, but then found the radically different syntax:

     PointCount
     Float, <Point>   // repeated

versus

     <point>          // repeated

Obviously it's too late to use a different keyword for the #declared spline, but
maybe it would be possible to have a new object, perhaps called a spline_shape,
that could be #declared:

     #declare Fred = spline_shape { SPLINE_TYPE POINTs ... }

and it could be used in things like lathes:

     lathe { ... spline_shape { Fred } ... }

This would allow libraries of spline_shapes to be created (table legs, newel
posts, architrave, etc..) and to be referenced, which does not seem to be
possible at present.

Cheers

Chris


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.